package com.admin.client.domain;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

/**
 * 战法表(CoreSkill)表实体类
 *
 * @author cxy
 * @since 2025-01-09 10:28:28
 */
@ApiModel("战法表")
@ColumnWidth(25)//列宽
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@EqualsAndHashCode(callSuper = true)
public class CoreSkill extends Model<CoreSkill> {// swagger2,mybatis-plus
    ///////////////////////////////////////////////////////////////////////////////////////////////////////// 生成实体字段
    @TableId(type = IdType.INPUT)
    @ApiModelProperty("id")
    @ExcelProperty({"id","id"})
    private Long id;
    
    @ApiModelProperty("战法名称")
    @ExcelProperty({"战法名称","name"})
    private String name;
    
    @ApiModelProperty("是否为天赋技能")
    @ExcelProperty({"是否为天赋技能","talent"})
    private Integer talent;
    
    @ApiModelProperty("战法类型")
    @ExcelProperty({"战法类型","type"})
    private Integer type;
    
    @ApiModelProperty("品质")
    @ExcelProperty({"品质","qualityLv"})
    private Integer qualityLv;
    
    @ApiModelProperty("战法描述")
    @ExcelProperty({"战法描述","intro"})
    private String intro;
    
    @ApiModelProperty("适应兵种 1.步兵2.弓兵3.骑兵4.全部")
    @ExcelProperty({"适应兵种 1.步兵2.弓兵3.骑兵4.全部","arms"})
    private Integer arms;
    
    @ApiModelProperty("是否受策略影响")
    @ExcelProperty({"是否受策略影响","isMagic"})
    private Integer isMagic;
    
    @ApiModelProperty("受策略影响系数")
    @ExcelProperty({"受策略影响系数","magicInfluence"})
    private Integer magicInfluence;
    
    @ApiModelProperty("技能图标")
    @ExcelProperty({"技能图标","icon"})
    private String icon;
    
    ///////////////////////////////////////////////////////////////////////////////////////////////////////// 序列化版本号
    @TableField(exist = false)
    private static final long serialVersionUID = 864418467857550246L;
    /////////////////////////////////////////////////////////////////////////////////////////////////////////// 获取主键值
    @Override
    public Serializable pkVal() {
        return this.id;
    }
    ///////////////////////////////////////////////////////////////////////////////////////////////////////  基础数据初始化
    public CoreSkill init() {
        return this;
    }
    /////////////////////////////////////////////////////////////////////////////////////////////////////////// 领域业务
}

